home *** CD-ROM | disk | FTP | other *** search
- #
- # globrecur.test
- #
- # Tests for recursive_glob and for_recursive_globs procedures.
- #
- #---------------------------------------------------------------------------
- # Copyright 1992-1993 Karl Lehenbauer and Mark Diekhans.
- #
- # Permission to use, copy, modify, and distribute this software and its
- # documentation for any purpose and without fee is hereby granted, provided
- # that the above copyright notice appear in all copies. Karl Lehenbauer and
- # Mark Diekhans make no representations about the suitability of this
- # software for any purpose. It is provided "as is" without express or
- # implied warranty.
- #------------------------------------------------------------------------------
- # $Id: globrecur.test,v 3.1 1994/01/24 04:04:57 markd Exp $
- #------------------------------------------------------------------------------
- #
-
- if {[info procs test] == ""} then {source testlib.tcl}
- eval $SAVED_UNKNOWN
-
- exec rm -rf GLOBTESTDIR
-
- tcltouch GLOBTESTDIR/file1
- tcltouch GLOBTESTDIR/dir1/file1
- tcltouch GLOBTESTDIR/dir1/file2
- tcltouch GLOBTESTDIR/dir1/file3.c
- tcltouch GLOBTESTDIR/dir2/file1
- tcltouch GLOBTESTDIR/dir2/file2.c
- tcltouch GLOBTESTDIR/dir2/file3
- tcltouch GLOBTESTDIR/file2
- tcltouch GLOBTESTDIR/dir2/dir3/file1.c
- tcltouch GLOBTESTDIR/dir2/dir3/file2.c
- tcltouch GLOBTESTDIR/dir2/dir3/file3
-
- set expectedResult1 [list GLOBTESTDIR/dir1 \
- GLOBTESTDIR/dir1/file1 \
- GLOBTESTDIR/dir1/file2 \
- GLOBTESTDIR/dir1/file3.c \
- GLOBTESTDIR/dir2 \
- GLOBTESTDIR/dir2/dir3 \
- GLOBTESTDIR/dir2/dir3/file1.c\
- GLOBTESTDIR/dir2/dir3/file2.c \
- GLOBTESTDIR/dir2/dir3/file3 \
- GLOBTESTDIR/dir2/file1 \
- GLOBTESTDIR/dir2/file2.c \
- GLOBTESTDIR/dir2/file3 \
- GLOBTESTDIR/file1 \
- GLOBTESTDIR/file2]
-
- set expectedResult2 [list GLOBTESTDIR/dir1/file3.c \
- GLOBTESTDIR/dir2/dir3/file1.c \
- GLOBTESTDIR/dir2/dir3/file2.c \
- GLOBTESTDIR/dir2/file2.c]
-
- set expectedResult3 [list GLOBTESTDIR/dir1/file3.c \
- GLOBTESTDIR/dir2/dir3 \
- GLOBTESTDIR/dir2/dir3/file1.c \
- GLOBTESTDIR/dir2/dir3/file2.c \
- GLOBTESTDIR/dir2/dir3/file3 \
- GLOBTESTDIR/dir2/file2.c \
- GLOBTESTDIR/dir2/file3]
-
- Test recursive_glob-1.1 {recursive_glob command} {
- lsort [recursive_glob GLOBTESTDIR *]
- } 0 $expectedResult1
-
- Test recursive_glob-1.2 {recursive_glob command} {
- lsort [recursive_glob GLOBTESTDIR {*.c}]
- } 0 $expectedResult2
-
- Test recursive_glob-1.3 {recursive_glob command} {
- lsort [recursive_glob GLOBTESTDIR {*.c *3}]
- } 0 $expectedResult3
-
- Test recursive_glob-1.4 {for_recursive_glob command} {
- recursive_glob GLOBTESTDIR/file1 {*.c *3}
- } 1 {"GLOBTESTDIR/file1" is not a directory}
-
- Test recursive_glob-2.1 {for_recursive_glob command} {
- set result {}
- for_recursive_glob file GLOBTESTDIR * {
- lappend result $file
- }
- lsort $result
- } 0 $expectedResult1
-
- Test recursive_glob-2.2 {for_recursive_glob command} {
- set result {}
- for_recursive_glob file GLOBTESTDIR {*.c} {
- lappend result $file
- }
- lsort $result
- } 0 $expectedResult2
-
- Test recursive_glob-2.3 {for_recursive_glob command} {
- set result {}
- for_recursive_glob file GLOBTESTDIR {*.c *3} {
- lappend result $file
- }
- lsort $result
- } 0 $expectedResult3
-
- Test recursive_glob-2.4 {for_recursive_glob command} {
- for_recursive_glob file GLOBTESTDIR/file1 {*.c *3} {
- error "should not execute"
- }
- } 1 {"GLOBTESTDIR/file1" is not a directory}
-
- exec rm -rf GLOBTESTDIR
-
- unset expectedResult1 expectedResult2 expectedResult3
-
- rename tcltouch ""
- rename unknown {}
-
-